package com.ruoyi.base.enums.item;

import lombok.Getter;

import java.util.Arrays;
import java.util.Objects;

/**
 * 原矿
 *
 * @author lcf
 */
public enum RawOreEnum {
    /**
     * 凡晶石
     */
    fjs(1,"凡晶石"),
    /**
     * 富凡晶石
     */
    ffjs(2, "富凡晶石"),
    /**
     * 聚合凡晶石
     */
    jhfjs(3, "聚合凡晶石"),
    /**
     * 灼烧岩
     */
    zsy(4, "灼烧岩"),
    /**
     * 富灼烧岩
     */
    fzsy(5, "富灼烧岩"),
    /**
     * 聚合灼烧岩
     */
    jhzsy(6, "聚合灼烧岩"),
    /**
     * 干焦岩
     */
    gjy(7, "干焦岩"),
    /**
     * 富干焦岩
     */
    fgjy(8,"富干焦岩"),
    /**
     * 聚合干焦岩
     */
    jhgzy(9, "聚合干焦岩"),
    /**
     * 斜长岩
     */
    xcy(10, "斜长岩"),
    /**
     * 富斜长岩
     */
    fxcy(11, "富斜长岩"),
    /**
     * 聚合斜长岩
     */
    jhxcy(12, "聚合斜长岩"),
    /**
     * 奥贝尔石
     */
    abes(13, "奥贝尔石"),
    /**
     * 富奥贝尔石
     */
    fabes(14, "富奥贝尔石"),
    /**
     * 聚合奥贝尔石
     */
    jhabes(15, "聚合奥贝尔石"),
    /**
     * 水硼砂
     */
    sps(16, "水硼砂"),
    /**
     * 富水硼砂
     */
    fsps(17, "富水硼砂"),
    /**
     * 聚合水硼砂
     */
    jhsps(18, "聚合水硼砂"),
    /**
     * 杰斯贝矿
     */
    jsbk(19, "杰斯贝矿"),
    /**
     * 富杰斯贝矿
     */
    fjsbk(20, "富杰斯贝矿"),
    /**
     * 聚合杰斯贝矿
     */
    jhjsbk(21,"聚合杰斯贝矿"),
    /**
     * 希莫非特
     */
    xmft(22, "希莫非特"),
    /**
     * 富希莫非特
     */
    fxmft(23, "富希莫非特"),
    /**
     * 聚合希莫非特
     */
    jhxmft(24, "聚合希莫非特"),
    /**
     * 同位原矿
     */
    twyk(25, "同位原矿"),
    /**
     * 富同位原矿
     */
    ftwyk(26, "富同位原矿"),
    /**
     * 聚合同位原矿
     */
    jhtwyk(27, "聚合同位原矿"),
    /**
     * 灰岩
     */
    hy(28, "灰岩"),
    /**
     * 富灰岩
     */
    fhy(29, "富灰岩"),
    /**
     * 聚合灰岩
     */
    jhhy(30, "聚合灰岩"),
    /**
     * 黑褚石
     */
    hcs(31, "黑褚石"),
    /**
     * 富黑褚石
     */
    fhcs(32, "富黑褚石"),
    /**
     * 聚合黑褚石
     */
    jhhcs(33, "聚合黑褚石"),
    /**
     * 片麻岩
     */
    pmy(34, "片麻岩"),
    /**
     * 富片麻岩
     */
    fpmy(35, "富片麻岩"),
    /**
     * 聚合片麻岩
     */
    jhpmy(36, "聚合片麻岩"),
    /**
     * 克洛基石
     */
    kljs(37, "克洛基石"),
    /**
     * 富克洛基石
     */
    fkljs(38, "富克洛基石"),
    /**
     * 聚合克洛基石
     */
    jhkljs(39, "聚合克洛基石"),
    /**
     * 双多特石
     */
    sdts(40, "双多特石"),
    /**
     * 富双多特石
     */
    fsdts(41, "富双多特石"),
    /**
     * 聚合双多特石
     */
    jhsdts(42, "聚合双多特石"),
    /**
     * 艾克诺石
     */
    akns(43, "艾克诺石"),
    /**
     * 富艾克诺石
     */
    fakns(44, "富艾克诺石"),
    /**
     * 聚合艾克诺石
     */
    jhakns(45, "聚合艾克诺石"),
    /**
     * 基腹断岩
     */
    jfdy(46, "基腹断岩"),
    /**
     * 富基腹断岩
     */
    fjfdy(47, "富基腹断岩"),
    /**
     * 聚合基腹断岩
     */
    jhjfdy(48, "聚合基腹断岩");

    @Getter
    private int code;
    @Getter
    private String name;

    RawOreEnum(int code, String name) {
        this.code = code;
        this.name = name;
    }

    public static RawOreEnum ofCode(Integer code) {
        return Arrays.stream(RawOreEnum.values()).filter(x -> Objects.equals(code, x.getCode())).findAny().orElse(null);
    }
}
